home *** CD-ROM | disk | FTP | other *** search
/ Atari Forever 4 / Atari Forever 4.zip / Atari Forever 4.iso / PD_THEMA / EDITOREN / 7UP_PD / REGCODE.C < prev    next >
C/C++ Source or Header  |  1998-03-14  |  3KB  |  127 lines

  1. /* Schlüsselregistrierung (Code gelöscht) */
  2. /*****************************************************************************
  3. *
  4. *                                             7UP
  5. *                                      Modul: REGCODE.C
  6. *                                  (c) by TheoSoft '92/94
  7. *
  8. *****************************************************************************/
  9. #include <portab.h>
  10. #include <stdio.h>
  11. #include <string.h>
  12. #include <stdlib.h>
  13. #include <aes.h>
  14. #include <tos.h>
  15. #include <ext.h>
  16.  
  17. #include "7up.h"
  18. #include "forms.h"
  19. #include "windows.h"
  20. #include "alert.h"
  21.  
  22. #include "language.h"
  23.  
  24. #define FILEIOBUFF (32*1024L)
  25.  
  26. char *search_env(char *path, char *filename, int write);
  27.  
  28. static unsigned long sum(unsigned char *str)
  29. {
  30.    /* algorithm canceled */
  31.    return(0);
  32. }
  33.  
  34. static unsigned long summe1(char *str)
  35. {
  36.    /* algorithm canceled */
  37.    return(0);
  38. }
  39.  
  40. static unsigned long summe2(char *str)
  41. {
  42.    /* algorithm canceled */
  43.    return(0);
  44. }
  45.  
  46. static unsigned long cryptsumme(char *str)
  47. {
  48.    /* algorithm canceled */
  49.    return(0);
  50. }
  51.  
  52. void reg_code()
  53. {
  54. }
  55.  
  56. int loadlizenz(char *filename)
  57. {
  58.     FILE *fp;
  59.    char name[40], code[11];
  60.    char pathname[PATH_MAX];
  61.  
  62.    extern char alertstr[];
  63.    extern OBJECT *registmenu, *copyinfo;
  64.  
  65.    if((fp=fopen(search_env(pathname,filename,FALSE),"r"))!=NULL)
  66.    {
  67.        fgets(name,sizeof(name),fp);
  68.         if(name[strlen(name)-1]=='\n')
  69.             name[strlen(name)-1]=0;
  70.        
  71.        fgets(code,sizeof(code),fp);
  72.         if(code[strlen(code)-1]=='\n')
  73.             code[strlen(code)-1]=0;
  74.  
  75.        fclose(fp);
  76.  
  77.         if((cryptsumme(name) == atol(code)) && (strlen(name) != 0))
  78.         {
  79.            form_write(registmenu,REGISTNAME,name,FALSE);
  80.            form_write(registmenu,REGISTKEY ,code,FALSE);
  81.  
  82.             strcpy(alertstr,BENUTZER);
  83.             strcat(alertstr,name);
  84.            form_write(copyinfo,CNAME,alertstr,FALSE);
  85.  
  86.             return(TRUE);
  87.        }
  88.    }
  89.     return(FALSE);
  90. }
  91.  
  92. int registerprogram(char *filename)
  93. {
  94.     FILE *fp;
  95.    char name[40], code[11];
  96.    char pathname[PATH_MAX];
  97.  
  98.    extern char alertstr[];
  99.    extern OBJECT *registmenu, *copyinfo;
  100.  
  101.    form_read(registmenu,REGISTNAME,name);
  102.    form_read(registmenu,REGISTKEY ,code);
  103.  
  104.     if((cryptsumme(name) != atol(code)) || (strlen(name) == 0))
  105.       {
  106.           form_alert(1,Aregcode[0]);
  107.           return(FALSE);
  108.       }
  109.  
  110.    if((fp=fopen(search_env(pathname,filename,TRUE),"wb"))!=NULL)
  111.    {
  112.        fprintf(fp,"%s\r\n%ls",name,code);
  113.        fclose(fp);
  114.  
  115.         strcpy(alertstr,BENUTZER);
  116.         strcat(alertstr,name);
  117.         form_write(copyinfo,CNAME,alertstr,FALSE);
  118.  
  119.         sprintf(alertstr,Aregcode[1],name,code);
  120.           form_alert(1,alertstr);
  121.  
  122.        return(TRUE);
  123.    }
  124.  
  125.     return(FALSE);
  126. }
  127.